// 后台登录控制器
// 引入用户模型
const userModel = require('../dao/models/userModel')

module.exports = {

  // 登录显示
  index(req, res) {
    // 指定渲染的模板
    res.render('admin/login/index')
  },
  // 用户登录处理
  async login(req, res) {
    // async/await 处理promise对象
    // 如果用户没有查询到则返回null,查询到则返回对象
    let ret = await userModel.checkUser(req.body)

    if (!ret) {// 用户没有存在
      return res.render('admin/login/msg', { msg: '用户名或密码有误' })
    } else {
      // 用户登录成功

      // 保存用户的登录状态 写入到session中
      req.session.username = ret.username
      req.session.nickname = ret.nickname
      // 跳转到后面首页
      res.redirect('/admin/index')
    }
  },
  // 判断用户是否已经登录，用于用户防翻墙
  isLogin(req, res, next) {
    // 判断session中是否有对应的属性，如果有值，则表示用户是登录成功过来的
    if (!req.session.username) {
      res.render('admin/login/msg', { msg: '请先登录' })
    } else {
      next()
    }
  }

}